import request1 from '@/utils/request'
import request from '@/utils/request2'
import {
    materialApiUrl
} from '../../config'
/**
 * 物资需求总计划历史记录列表
 * @param parameter
 */
export function historyList(parameter) {
    return request({
        url: materialApiUrl + '/materials/queryByHistory',
        method: 'get',
        params: parameter
    })
}
/**
 * 物资需求总计划列表
 * @param parameter
 */
export function totalPlanList(parameter) {
    return request({
        url: materialApiUrl + '/materials/material-test',
        method: 'post',
        data: parameter
    })
}
/**
 *
 物资需求总计划统计
 */
export function findListCount(params) {
    return request({
        url: materialApiUrl + '/materials/findListCount',
        method: 'post',
        data:params
    })
}
/**
 * 物资需求总计划列表的子表
 * @param parameter
 */
export function totalPlanListChild(parameter) {
    return request({
        url: materialApiUrl + '/materials/material-month/findListByDetailsById',
        method: 'get',
        params: parameter
    })
}
/**
 * 物资需求总计划列表删除
 * @param parameter
 */
export function totalPlanListDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/needMasterPlan_del',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求总计划列表新增
 * @param parameter
 */
export function totalPlanListAdd(parameter) {
    return request({
        url: materialApiUrl + '/materials/needMasterPlan_add',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求总计划列表编辑
 * @param parameter
 */
export function totalPlanListEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/needMasterPlan_details',
        method: 'post',
        data: parameter
    })
}

/**
 * 物资需求总计划列表详情
 * @param parameter
 */
export function totalPlanListDetail(params) {
    return request({
        url: materialApiUrl + `/materials/needMasterPlan_details/${params.id}`,
        method: 'get',
        params
    })
}
/**
 * 物资需求钢筋列表 
 * @param parameter
 */
export function totalPlanReinforcedList(parameter) {
    return request({
        url: materialApiUrl + '/materials/rebarPlanTables',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求钢筋列表新增
 * @param parameter
 */
export function totalPlanReinforcedListAdd(data) {
    return request1.post(`${materialApiUrl}/materials/saveByBarsDatileList`, data, { unNotify : true })
    // return request1({
    //     url: materialApiUrl + '/materials/saveByBarsDatileList',
    //     method: 'post',
    //     data: parameter,

    // })
}
/**
 * 物资需求钢筋列表编辑
 * @param parameter
 */
export function totalPlanReinforcedListEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/rebarEditRow',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求钢筋列表删除
 * @param parameter
 */
export function totalPlanReinforcedListDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/rebarDel',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求混凝土列表 
 * @param parameter
 */
export function concreteList(parameter) {
    return request({
        url: materialApiUrl + '/materials/concreteTable',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求混凝土列表删除
 * @param parameter
 */
export function concreteListDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/concreteDel',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资需求混凝土列表新增
 * @param parameter
 */
export function concreteListAdd(data) {
    return request1.post(`${materialApiUrl}/materials/saveByConcreteDetailList`, data, { unNotify : true })
    // return request({
    //     url: materialApiUrl + '/materials/saveByConcreteDetailList',
    //     method: 'post',
    //     data: parameter
    // })
}
/**
 * 物资需求混凝土列表编辑
 * @param parameter
 */
export function concreteListEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/concreteEdit',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资列表 
 * @param parameter
 */
export function goodsList(parameter) {
    return request({
        url: materialApiUrl + '/materials/materialNeedList',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资列表新增
 * @param parameter
 */
export function goodsListAdd(data) {
    return request1.post(`${materialApiUrl}/materials/saveByMatrialDetailList`, data, { unNotify : true })
    // return request({
    //     url: materialApiUrl + '/materials/saveByMatrialDetailList',
    //     method: 'post',
    //     data: parameter
    // })
}
/**
 * 物资列表删除
 * @param parameter
 */
export function goodsListDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/materialDel',
        method: 'post',
        data: parameter
    })
}
/**
 * 物资列表编辑
 * @param parameter
 */
export function goodsListEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/materialEdit',
        method: 'post',
        data: parameter
    })
}
/**
 * 工具列表 
 * @param parameter
 */
export function toolList(parameter) {
    return request({
        url: materialApiUrl + '/materials/toolsList',
        method: 'post',
        data: parameter
    })
}
/**
 * 工具新增
 * @param parameter
 */
export function toolAdd(data) {
    return request1.post(`${materialApiUrl}/materials/saveByToolslDetailList`, data, { unNotify : true })
    // return request({
    //     url: materialApiUrl + '/materials/saveByToolslDetailList',
    //     method: 'post',
    //     data: parameter
    // })
}
/**
 * 工具编辑
 * @param parameter
 */
export function toolEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/toolsEdit',
        method: 'post',
        data: parameter
    })
}
/**
 * 工具删除
 * @param parameter
 */
export function toolDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/toolsDel',
        method: 'post',
        data: parameter
    })
}
/**
 * 设备列表 
 * @param parameter
 */
export function equipmentList(parameter) {
    return request({
        url: materialApiUrl + '/materials/equipmentList',
        method: 'post',
        data: parameter
    })
}
/**
 * 设备新增
 * @param parameter
 */
export function equipmentAdd(data) {
    return request1.post(`${materialApiUrl}/materials/saveByMechanicalDetailList`, data, { unNotify : true })
    // return request({
    //     url: materialApiUrl + '/materials/saveByMechanicalDetailList',
    //     method: 'post',
    //     data: parameter
    // })
}
/**
 * 设备编辑
 * @param parameter
 */
export function equipmentEdit(parameter) {
    return request({
        url: materialApiUrl + '/materials/equipmentEdit',
        method: 'post',
        data: parameter
    })
}
/**
 * 设备删除
 * @param parameter
 */
export function equipmentDel(parameter) {
    return request({
        url: materialApiUrl + '/materials/equipmentDel',
        method: 'post',
        data: parameter
    })
}

/**
 * 物资需求总计划提交审核
 * @param parameter
 */
export function audit(data) {
    return request1.post(`${materialApiUrl}/materials/submitApply`, data, { unNotify : true })
    // return request1({
    //     url: materialApiUrl + '/materials/submitApply',
    //     method: 'post',
    //     data: parameter
    // })
}
/**
 * 物资需求总计划新增附件
 * @param parameter
 */
export function addFile(parameter) {
    let url = materialApiUrl + '/materials/addFile';
    return url;
}
/**
 * 物资需求总计划附件列表
 * @param parameter
 */
export function fileList(parameter) {
    let url = materialApiUrl + '/materials/findFileList';
    return url;
}
/**
 * 物资需求总计划附件删除
 * @param parameter
 */
export function fileDel(parameter) {
    let url = materialApiUrl + '/materials/deleteFile';
    return url;
}


/**
 * 设备总计划基本信息的新增/编辑
 * @param parameter
 */
export function equipmentBasic(parameter) {
    return request({
        url: materialApiUrl + '/materials/needMasterPlan_details_equement',
        method: 'post',
        data: parameter
    })
}
/**
 * 获取工程信息
 * @param parameter
 */
export function departmentConfig(parameter) {
    return request({
        url: '/cscec-project-business/projects/department-config',
        method: 'get',
        params: parameter
    })
}

function jointUrl(url, params) {
    let idx = url.indexOf('?')
    if (idx < 0) {
        url = url + '?'
    } else if (idx !== url.length - 1) {
        if (url.charAt(url.length - 1) !== '&') {
            url = url + '&'
        }
    }
    for (let key in params) {
        if (params.hasOwnProperty(key)) {
            let v = params[key]
            if (v !== '') {
                url += key + '=' + params[key] + '&'
            }
        }
    }
    console.log(url)
    return url
}
import Vue from 'vue'
/**
 * 模板下载通用接口
 * @param parameter
 */
export function downloadExcel(list, args) {

    let ids = list.map(v => v.id)
    Object.assign(args, {
        ids: ids
    })
    const link = document.createElement('a')

    link.href = jointUrl(
        `/api${materialApiUrl}/materials/findMaterialMasterPlanBarExcel?access_token=${Vue.getAcloudProvider().getAccessToken()}`,
        args
    )
    console.log(link.href)
    link.setAttribute('target', '_self')
    document.body.appendChild(link)
    link.click()
    document.body.removeChild(link)
}